<template>
    <div>
        <button @click="isShow = !isShow">显示/隐藏</button>
        <!-- transition 这个标签专门用来管理动画的 -->
        <!-- appear 属性表示页面初始时候带有动画效果 -->
        <transition appear>
            <h1 v-show="isShow">你好啊</h1>
        </transition>

        <!-- transition-group 这个标签专门用来管理多个动画的 -->
        <transition-group appear>
            <!-- key用来标识多个过度效果，不写key的话，就只会有1个效果 -->
            <h1 v-show="isShow" key="1">你好啊</h1>
            <h1 v-show="!isShow" key="2">你好啊</h1>
        </transition-group>
    </div>
</template>

<script>
export default {
    name: 'Test',
    data() {
        return {
            isShow: true
        }
    }
}
</script>
<style scoped>
h1 {
    background-color: orange;
}

/* 进入的起点 */
.v-enter {
    transform: translateX(-100%);
}

/* 进入的终点 */
.v-enter-to {
    transform: translateX(0);
}

/* 离开的起点*/
.v-leave {
    transform: translateX(0);
}

/* 离开的终点 */
.v-leave-to {
    transform: translateX(-100%);
}

.v-enter-active, .v-leave-active {
    /* 0.5秒匀速 */
    transition: 0.5s linear;
}
</style>